layui.use(['table','form'], function() {
    var table = layui.table
        , form = layui.form
        , $ = layui.$;
    var tableName = "user";
    var url = "/Class/user/getAllUsers";
    //执行一个 table 实例
    table.render({
        elem: '#user',
        height: 'full-70',
        url: '/Class/user/getAllUsers', //数据接口
        title: '用户表',
        page: true ,//开启分页
        toolbar: '#barbtn', //开启工具栏，此处显示默认图标，可以自定义模板，详见文档
        limits:[10,20,30,40],
        cols:
            [[ //表头
                { type: 'checkbox',fixed: 'left'},
                { field: 'id',title: 'ID',sort: true,hide: true},
                { field: 'username',title: '用户名', sort: true},
                { field: 'password',title: '密码'},
                { field: 'realName',title: '实名', edit: 'text', sort: true},
                { field: 'idNumber',title: '证件号', edit: 'text'},
                { field: 'phone',title: '手机号'},
                { field: 'email',title: '邮箱', edit: 'text'},
                { field: 'head',title: '头像', edit: 'text'},
                { field: 'teaNo',title: '教师工号'},
                { field: 'userType',title: '用户类型', templet: '#switchTpl'},
                { fixed: 'right', width: 165, align:'center', toolbar: '#barDemo'}
            ]]
    });
    //监听行工具事件
    table.on('tool(userTool)',function (obj) {
        var data=obj.data;
        var layEvent=obj.event;
        if(layEvent=="delete")
        {
           utils.del($, data, tableName, url);
        }
    });
    //监听头工具栏事件
    table.on('toolbar(userTool)', function(obj){
        let checkStatus = table.checkStatus(obj.config.id)//复选框数据
            ,data = checkStatus.data; //获取选中的数据 数组
        let arr=new Array();
        for(let i in data)
        {
            arr[i]=data[i].id;//取出id到列表
        }
        switch(obj.event){
            case 'add':
                layer.msg('请在注册页操作');
                break;
            case 'update':
                break;
            case 'delete':
                utils.delete($, data, tableName, arr);
                break;
        };
    });
    //监听单元格编辑
    table.on('edit(userTool)', function(obj){
        utils.update($, obj, tableName, url);
    });
    //进行模糊查询 (用户名和类型)
    form.on('submit(search)', function(data){
        var type= $("select option:selected").val();
        table.reload(tableName, {
            url:'/Class/user/selectByLike',
            where: { //设定异步数据接口的额外参数，任意设
                "value":$('#searchName').val() || "",'type':type
            }
            ,page: {
                curr: 1 //重新从第 1 页开始
            }
        }); //只重载数据
        return false; //阻止表单跳转。如果需要表单跳转，去掉这段即可。
    });
});
